1
查詢效能簡介
DSAI2202Lesson 11: Correct Answer, Terrible Query
00:00

在資料庫管理中,達到正確的邏輯結果只是目標的一半;了解 查詢效能 可確保資料庫高效地計算結果,不浪費系統資源。一個查詢可能成功回傳所要求的精確資料,但在幕後卻以低效率的方式執行。

學習目標與背景

Lecture 11 — 正確答案,糟糕的查詢:強調撰寫可運作的 SQL 是不夠的;資料庫開發人員必須了解查詢最佳化器在底層如何執行作業。

查詢效能簡介兩種存取路徑並非永遠較快;須以具代表性的工作負載實測。查詢效能簡介兩種查詢方式產生相同的輸出資料,但資源成本不同。查詢效能簡介A方案 A:掃描全表掃描(數百萬列)讀取大量資料頁B方案 B:索引查詢索引查詢(直接存取)具選擇性的存取可望減少工作量輸出最終結果表相同的輸出資料兩種存取路徑並非永遠較快;須以具代表性的工作負載實測。

核心概念

  • 邏輯正確性 vs. 執行效能:成功回傳資料並不保證資源使用效率。兩個功能相同的查詢可能產生完全相同的輸出資料表,但消耗的 CPU、記憶體和磁碟 I/O 卻差異甚大。
  • 對系統可擴充性的影響:未最佳化的查詢會成為效能瓶頸,拖慢並發使用者、增加伺服器負載,且無法在資料庫規模增長時優雅地擴充。
  • 範例情境:在擁有數百萬列的資料表中搜尋特定客戶。低品質的查詢會強制進行全表掃描,耗時數秒;而最佳化的查詢僅需毫秒即可取得記錄。
補充說明
Lecture 11 — 正確答案,糟糕的查詢:資料庫開發人員必須分析執行計畫,以確保查詢在高負載的正式環境工作負載下能有效擴充。
Introduction to Query Performance